package com.jy.modules.cims.component.balance.servicefee;

import java.math.BigDecimal;

import com.jy.modules.cims.data.common.dto.TCMmCostParamDTO;
import com.jy.modules.cims.data.common.dto.TCMmRaisePlanDTO;
import com.jy.modules.cims.data.dto.CreditDetailDto;
import com.jy.modules.cims.data.dto.LoanDetailDto;

public interface ServiceFeeI {

	/**
	 * 债权的费用计算-参数债权明细，费用参数
	 * @Title doServiceFee  服务费
	 * @Title doGuaranteeFee  担保费
	 * @Title doRiskFee  保证金
	 * @author zhangmi
	 * @date 2016-8-16-上午10:45:36
	 * @update 
	 * @throws
	 */
	//服务费
	public BigDecimal doServiceFee(CreditDetailDto creditDetailDto,TCMmCostParamDTO tcmmCostParamDto);
	
	//担保费
	public BigDecimal doGuaranteeFee(CreditDetailDto creditDetailDto,TCMmCostParamDTO tcmmCostParamDto);
	
	//保证金
	public BigDecimal doRiskFee(CreditDetailDto creditDetailDto,TCMmCostParamDTO tcmmCostParamDto);

	//退费
	
	
	/**
	 * 债权的费用计算 -参数贷款明细，费用参数，募集计算
	 * @Title doServiceFee  服务费
	 * @Title doGuaranteeFee  担保费
	 * @Title doRiskFee  保证金
	 * @author zhangmi
	 * @date 2016-8-16-上午10:45:36
	 * @update 
	 * @throws
	 */
	//服务费
	public BigDecimal doServiceFee(LoanDetailDto loanDetailDto,TCMmCostParamDTO tcmmCostParamDto,TCMmRaisePlanDTO tcmmRaisePlanDto);
	
	//担保费
	public BigDecimal doGuaranteeFee(LoanDetailDto loanDetailDto,TCMmCostParamDTO tcmmCostParamDto,TCMmRaisePlanDTO tcmmRaisePlanDto);
	
	//保证金
	public BigDecimal doRiskFee(LoanDetailDto loanDetailDto,TCMmCostParamDTO tcmmCostParamDto,TCMmRaisePlanDTO tcmmRaisePlanDto);

}
